package rnavizexperimentation;

/**
 *
 * @author Elias la Cour
 */
public class InputHandler {

    /**
     * Creates a long sequence of nucleotides
     * @return Returns a Structure
     */
    public Structure createSeq10000() {
        char[] nucTypes = {'A', 'U', 'C', 'G'};
        char[] seq = new char[10000];

        for (int i = 0; i < seq.length; i++) {
            seq[i] = nucTypes[i % 4];
        }
        Structure s = new Structure();
        s.setBaseSequence(seq);
        return s;
    }

    /**
     * a small test input containing sequence as well as structure + pseudoknots
     * @return Returns a Structure
     */
    public Structure smallInput() {
        String inSeq = "UUAGCUCGCCAGUUAGCGAGGUCUGUCCCCACACGACAGAUAAUCGGGUGCAACUCCCGCCCCUUUUCCGAGGGUCAUCGGAACCA";
        String inDotSequence = "::::(((((::::::))))):((((((:::::::))))))::::((((:::::::))))(((:::[[[[[[))):::]]]]]]:::";
        char[] sequence = inSeq.toCharArray();
        char[] dotSequence = inDotSequence.toCharArray();
        Structure s = new Structure();
        s.setDotSequence(dotSequence);
        s.setBaseSequence(sequence);
        return s;
    }

    public Structure verySmallInput() {
        char[] sequence = {'C', 'C', 'C', 'A', 'A', 'A', 'A', 'A', 'G', 'G', 'G'};
        char[] dotSequence = {'(', '(', '(', ':', ':', ':', ':', ':', ')', ')', ')'};
        Structure s = new Structure();
        s.setDotSequence(dotSequence);
        s.setBaseSequence(sequence);
        return s;        
    }
}
